const { Vue, VueQrcode } = window;

Vue.component(VueQrcode.name, VueQrcode);

describe('<qrcode>', () => {
  it('tag', () => {
    const vm = new Vue({
      template: '<qrcode tag="img" value="1"></qrcode>',
    }).$mount();

    expect(vm.$el.tagName.toLowerCase()).to.equal('img');
  });

  it('options', (done) => {
    const vm = new Vue({
      template: '<qrcode value="1" :options="{ size: 200 }"></qrcode>',
    }).$mount();

    setTimeout(() => {
      expect(vm.$el.width).to.equal(200);
      done();
    }, 500);
  });

  it('value', (done) => {
    const vm = new Vue({
      template: '<qrcode value="1"></qrcode>',
    }).$mount();

    setTimeout(() => {
      expect(vm.$el.toDataURL()).to.equal('');
      done();
    }, 500);
  });
});
